package com.tanhua.dubbo.api;

import com.tanhua.model.domain.RecommendUser;
import com.tanhua.model.vo.PageResult;

import java.util.List;

public interface RecommendUserApi {

    /**
     * description: 查询推荐用户 通过 分数 <br>
     * version: 1.0 <br>
     * date: 2021/11/14 21:23 <br>
     * author: SangWu <br>
     *
     * @param toUserId
     * @return com.tanhua.model.domain.RecommendUser
     */
    RecommendUser queryWithMaxScore(Long toUserId);

    /**
     * 条件随机取样
     * @param score
     * @param count
     * @return
     */
    List<RecommendUser> queryByScore(Integer score,Integer count);

    /**
     * description: 查询推荐用户 通过 分页,toUserId <br>
     * version: 1.0 <br>
     * date: 2021/11/15 18:55 <br>
     * author: SangWu <br>
     *
     * @param page
     * @param pageSize
     * @param toUserId
     * @return com.tanhua.model.vo.PageResult
     */
    PageResult queryByToUserId(Integer page, Integer pageSize, Long toUserId);

    /**
     * 查询推荐佳人信息
     * @param userId
     * @param toUserId
     * @return
     */
    RecommendUser queryByRecommendUserId(Long userId, Long toUserId);

    /**
     * 查询探花列表，查询时需要排除喜欢和不喜欢的用户
     * @param userId
     * @param count
     * @return
     */
    List<RecommendUser> queryCardsList(Long userId, int count);
}